/*
 *  Copyright 2025 Collate.
 *  Licensed under the Apache License, Version 2.0 (the "License");
 *  you may not use this file except in compliance with the License.
 *  You may obtain a copy of the License at
 *  http://www.apache.org/licenses/LICENSE-2.0
 *  Unless required by applicable law or agreed to in writing, software
 *  distributed under the License is distributed on an "AS IS" BASIS,
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *  See the License for the specific language governing permissions and
 *  limitations under the License.
 */

@import (reference) '../../../styles/variables.less';
.sso-provider-selection {
  min-height: calc(100vh - (@om-navbar-height + 50px));
  background: @white;
  border: 1px solid @grey-15;
  border-radius: @border-rad-sm;
  margin-top: @size-xs;
  padding: @padding-lg;
  .provider-selector-container {
    .provider-selector-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: @padding-lg;

      h5 {
        font-size: @font-size-base + 4px;
        font-weight: @font-semibold;
        color: @grey-700;
        margin: 0;
      }
    }

    .provider-selection-container {
      gap: @size-lg;
    }

    .provider-item {
      display: flex;
      align-items: center;
      gap: @padding-mlg;
      padding: @padding-sm @padding-mlg;
      background: @background-color;
      border: 1px solid @grey-200;
      width: 340px;
      border-radius: @border-rad-sm;
      cursor: pointer;
      box-shadow: @box-shadow-card-subtle;

      &.selected {
        outline: 2px solid @primary-color;
        outline-offset: @size-xxs;
      }

      &:hover {
        outline: 2px solid @primary-color;
        outline-offset: @size-xxs;
      }
    }

    .provider-icon {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 56px;
      height: 56px;
      flex-shrink: 0;
      background: @white;
      border-radius: @size-sm + 2px;
      border: 1px solid @grey-300;

      .provider-icon-inner {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 48px;
        height: 48px;
        background: @white;
        border-radius: @size-sm - 2px;
        border: 1px solid @grey-300;
        box-shadow: @box-shadow-elevated-multi;
      }
    }

    .provider-name {
      font-size: @size-md;
      font-weight: 600;
      color: @grey-900;
      line-height: @size-lg;
      text-align: center;
      white-space: nowrap;
    }
  }
  .configure-arrow {
    transform: rotate(45deg);
  }
  .cta-card {
    display: flex;
    align-items: flex-start;
    gap: @padding-md;
    padding: @padding-lg @padding-mlg;
    background: @background-color;
    border: 1px dashed @grey-300;
    border-radius: @border-rad-xs;

    cursor: pointer;

    &:hover {
      border-color: @primary-color;
      background-color: @grey-9;
    }

    .cta-icon {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 64px;
      height: 64px;
      flex-shrink: 0;
      background: @white;
      border-radius: @size-md;
      border: 1px solid @grey-300;
      box-shadow: @box-shadow-elevated-multi;
      padding: 6px;

      .cta-icon-inner {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 52px;
        height: 52px;
        background: @white;
        border-radius: @border-rad-sm;
        border: 1px solid @grey-200;

        .anticon {
          font-size: @size-2xl - @size-md;
          color: @grey-500;
        }
      }
    }

    .cta-content {
      flex: 1;
      display: flex;
      flex-direction: column;
      justify-content: center;
      gap: @padding-xs;

      .cta-title {
        font-size: @size-md;
        font-weight: 600;
        color: @grey-800;
        margin: 0;
        line-height: 1.4;
      }

      .cta-description {
        font-size: @font-size-base;
        font-weight: 400;
        color: @grey-500;
        margin: 0;
        line-height: 1.5;
      }
    }

    &:hover {
      .cta-icon {
        background: @primary-50;
        border-color: @primary-color;

        .cta-icon-inner {
          border-color: @primary-2;

          .anticon {
            color: @primary-color;
          }
        }
      }

      .cta-title {
        color: @primary-color;
      }
    }
  }
}
